package com.tcm.doctor.mapper;


import com.tcm.doctor.domain.dto.DoctorVerifyDTO;
import com.tcm.doctor.domain.entity.DoctorVerify;
import com.tcm.doctor.domain.vo.DoctorVerifyVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface DoctorVerifyMapper {

    int deleteByUserId(Long userId);

    int deleteLogicByUserId(Long userId);

    int insert(DoctorVerify record);

    DoctorVerify findByUserId(Long userId);

    int update(DoctorVerify record);

    /**
     * 分页查询认证资料列表
     * @param offset
     * @param pagesize
     * @return
     */
    List<DoctorVerifyDTO> listVerifyPage(@Param("offset") Long offset, @Param("pagesize") Long pagesize);

    /**
     * 根据审核状态分页查询认证资料列表
     * @param status 状态
     * @param offset 当前页码
     * @param pagesize 每页记录条数
     * @return
     */
    List<DoctorVerifyDTO> listVerifyPageByStatus(@Param("status")Byte status, @Param("offset") Long offset,
                                                @Param("pagesize") Long pagesize);

    int countVerify();

    int countVerifyByStatus(@Param("status")Byte status);

    int verifyStatus(@Param("status")Byte status, @Param("status") Long userId);
}